// models/user_model.go
package models

import "muziai-server/models/ctype"

type UserModel struct {
	Model
	Nickname       string               `gorm:"size:32" json:"nickname"`
	Username       string               `gorm:"size:32" json:"username"`
	Password       string               `gorm:"size:64" json:"-"`
	Tel            string               `gorm:"size:12" json:"tel"`
	Email          string               `gorm:"size:128" json:"email"`
	OpenID         string               `gorm:"size:64" json:"openID"` // 一般是指第三方登陆的唯一ID
	RegisterSource ctype.RegisterSource `json:"registerSource"`        // 0 手机号  1 邮箱  2 微信
	Avatar         string               `gorm:"size:256" json:"avatar"`
	Scope          int                  `json:"scope"`
	Role           ctype.Role           `json:"role"`                       // 0 普通用户  1 管理员
	AiRoleList     []AiRoleModel        `gorm:"foreignKey:UserID" json:"-"` // 用户创建的角色列表
	SessionList    []SessionModel       `gorm:"foreignKey:UserID" json:"-"` // 用户创建的会话列表
	ChatList       []ChatModel          `gorm:"foreignKey:UserID" json:"-"` // 用户聊的对话列表
	OrderList      []OrderModel         `gorm:"foreignKey:UserID" json:"-"` // 用户创建的订单列表
	Money          int64                `json:"money"`                      // 用户累计支付的金额
}
